/**
 * @author liuxin
 * @e-mail lxtobe5@gmail.com
 * @update 2011.11.19
 * @prompt If you find my mistake, please contact with me via my e-mail.
 */
package API_sample.TopLevel_samples
{
	import flash.display.Sprite;

	public class GlobalConstants_sample extends Sprite
	{
		public function GlobalConstants_sample()
		{
			//-Infinity常量   -Infinity : Number  相关 API 元素   Number.NEGATIVE_INFINITY
			//Infinity常量     Infinity : Number   相关 API 元素   Number.POSITIVE_INFINITY
			//NaN常量                  NaN : Number        相关 API 元素   isNaN()  Number.NaN
			//undefined常量  undefined : *       相关 API 元素  null
			trace(0 / 0);  // NaN
			trace(7 / 0);  // Infinity
			trace(-7 / 0); // -Infinity
			trace(String(undefined)); // undefined（undefined 转换为字符串）
			trace(Number(undefined)); // NaN
			trace(int(undefined));    // 0
			trace(uint(undefined));   // 0
			
			/*向类型变量赋予值 undefined 时，该值将转换为该数据类型的默认值。*/
			trace(Object(undefined)); //[object Object]
			//trace(Array(undefined));  //（空数组）
			
			/*不要混淆 undefined 和 null,Null类型变量不能是 undefined。在比较之前，值 undefined 会被强制转换为类型 Null。*/
			//trace(undefined == null); //true
			//trace(undefined === null);//false 
			
			/*变量未类型化或初始化都是 undefined*/
			//var foo1;
			var foo2:*;
			//trace(foo1);              // undefined
			trace(foo2);              // undefined
			
			/*动态对象的未初始化属性*/
			var obj:A = new A();
			trace(obj.propName); // undefined
		}
	}
}
dynamic class A {}
